aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes/(app)/[username]/request
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2022-11-04 12:44:10 -0700
committerAdam Soltys <[email protected]>2022-11-04 12:44:10 -0700
commit64865d202bc30bfadcf99b309100d8194544cf0d (patch)
treef554776b24a20ec3188d07dc7c2e28c000301a8e /src/routes/(app)/[username]/request
parentade26b888e0772968306e9b19e1cec322046d21b (diff)
downloadcoinos-ui-64865d202bc30bfadcf99b309100d8194544cf0d.tar.gz
coinos-ui-64865d202bc30bfadcf99b309100d8194544cf0d.zip
menu buttons
Diffstat (limited to 'src/routes/(app)/[username]/request')
-rw-r--r--src/routes/(app)/[username]/request/+page.server.js6
-rw-r--r--src/routes/(app)/[username]/request/+page.svelte15
-rw-r--r--src/routes/(app)/[username]/request/sent/+page.svelte22
3 files changed, 32 insertions, 11 deletions
diff --git a/src/routes/(app)/[username]/request/+page.server.js b/src/routes/(app)/[username]/request/+page.server.js
index 443bc978..a1d156e5 100644
--- a/src/routes/(app)/[username]/request/+page.server.js
+++ b/src/routes/(app)/[username]/request/+page.server.js
@@ -1,3 +1,4 @@
+import { redirect } from "@sveltejs/kit";
import { auth, post } from '$lib/utils';
export let load = ({ params }) => {
@@ -5,8 +6,9 @@ export let load = ({ params }) => {
}
export const actions = {
- default: async ({ cookies, request }) => {
+ default: async ({ cookies, request, url }) => {
let form = Object.fromEntries(await request.formData());
- return { request: await post('/requests', form, auth(cookies)) };
+ await post('/requests', form, auth(cookies));
+ throw redirect(307, url.href + '/sent');
}
};
diff --git a/src/routes/(app)/[username]/request/+page.svelte b/src/routes/(app)/[username]/request/+page.svelte
index 51c92877..32b03eaa 100644
--- a/src/routes/(app)/[username]/request/+page.svelte
+++ b/src/routes/(app)/[username]/request/+page.svelte
@@ -14,19 +14,16 @@
</button>
<h1 class="px-3 md:px-0 text-center text-3xl md:text-4xl font-semibold mb-8">Request an invoice</h1>
-{#if form}
- {JSON.stringify(form)}
-{/if}
-<div class="container max-w-lg px-4">
- <form method="POST" use:enhance>
- <input name="requester_id" value={user.id} />
- <input name="recipient" value={subject.username} />
+<div class="container max-w-lg px-4 flex mx-auto">
+ <form method="POST" use:enhance>
+ <input type="hidden" name="requester_id" value={user.id} />
+ <input type="hidden" name="recipient" value={subject.username} />
- <textarea name="note" placeholder="Note" class="w-full p-4 border rounded-xl h-48" />
+ <textarea name="memo" placeholder="(Optional) message. You might use this field to identify yourself or your order" class="w-full p-4 border rounded-xl h-48" />
<button type="submit" class="bg-black text-white border rounded-full px-6 py-2 font-bold">
- Submit
+ Go
</button>
</form>
</div>
diff --git a/src/routes/(app)/[username]/request/sent/+page.svelte b/src/routes/(app)/[username]/request/sent/+page.svelte
new file mode 100644
index 00000000..47d930bf
--- /dev/null
+++ b/src/routes/(app)/[username]/request/sent/+page.svelte
@@ -0,0 +1,22 @@
+<script>
+ import { scale } from 'svelte/transition';
+ import { Icon } from '$comp';
+
+ export let data;
+ let { subject } = data;
+</script>
+
+<div class="container px-4 text-center mx-auto">
+ <div class="flex w-full py-20 max-w-[200px] mx-auto" in:scale={{ start: 0.5 }}>
+ <Icon icon="check" style="mx-auto" />
+ </div>
+ <h1 class="text-3xl md:text-4xl font-bold mb-6">Request sent</h1>
+
+ <a href={`/${subject.username}`}>
+ <button
+ class="bg-black text-white rounded-2xl w-20 py-3 font-bold hover:opacity-80"
+ >
+ Done
+ </button>
+ </a>
+</div>